package com.ruoyi.enterStock.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author WangChangShuo
 * @date 2022年09月26日 17:55
 */
public class EnterStockModel {

    /**
     * 销货单入库表子表主键
     */
    private Long enterStockModelId;

    /**
     * 销货单入库表主键
     */
    private Long enterStockId;

    /**
     * 采购规格/型号明细
     */
    private Long procurementWarehousingNo;

    /**
     * 采购订单管理主键
     */
    private Long procurementWarehousingId;

    private Long SaleGoodsModelId;

    /**
     * 产品主键
     */
    private Long productId;

    /**
     * 产品规格主键
     */
    private Long modelNo;

    /**
     * 产品注册证
     */
    private String medicalNumber;

    /**
     * 医疗器械注册证主键
     */
    private String productProofId;
    /**
     * 医疗器械失效时间
     */ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date medicalEndTime;

    /**
     * 本批号数量
     */
    private int warehousingAmount;

    /**
     * 产品规格型号唯一码
     */
    private String modelCode;


    /**
     * 单价
     */
    @JsonSerialize(using= ToStringSerializer.class)
    private BigDecimal purchasePrice;

    /**
     * 税率
     */
    private String taxRate;

    /**
     * 含税单价
     */
    @JsonSerialize(using= ToStringSerializer.class)
    private BigDecimal taxPrice;

    /**
     * 总金额
     */
    @JsonSerialize(using= ToStringSerializer.class)
    private BigDecimal purchaseTotal;

    /**
     * 含税金额
     */
    @JsonSerialize(using= ToStringSerializer.class)
    private BigDecimal taxTotal;

    public Long getEnterStockModelId() {
        return enterStockModelId;
    }

    public void setEnterStockModelId(Long enterStockModelId) {
        this.enterStockModelId = enterStockModelId;
    }

    public Long getEnterStockId() {
        return enterStockId;
    }

    public void setEnterStockId(Long enterStockId) {
        this.enterStockId = enterStockId;
    }

    public Long getProcurementWarehousingNo() {
        return procurementWarehousingNo;
    }

    public void setProcurementWarehousingNo(Long procurementWarehousingNo) {
        this.procurementWarehousingNo = procurementWarehousingNo;
    }

    public Long getProcurementWarehousingId() {
        return procurementWarehousingId;
    }

    public void setProcurementWarehousingId(Long procurementWarehousingId) {
        this.procurementWarehousingId = procurementWarehousingId;
    }

    public Long getSaleGoodsModelId() {
        return SaleGoodsModelId;
    }

    public void setSaleGoodsModelId(Long saleGoodsModelId) {
        SaleGoodsModelId = saleGoodsModelId;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public Long getModelNo() {
        return modelNo;
    }

    public void setModelNo(Long modelNo) {
        this.modelNo = modelNo;
    }

    public String getMedicalNumber() {
        return medicalNumber;
    }

    public void setMedicalNumber(String medicalNumber) {
        this.medicalNumber = medicalNumber;
    }

    public String getProductProofId() {
        return productProofId;
    }

    public void setProductProofId(String productProofId) {
        this.productProofId = productProofId;
    }

    public Date getMedicalEndTime() {
        return medicalEndTime;
    }

    public void setMedicalEndTime(Date medicalEndTime) {
        this.medicalEndTime = medicalEndTime;
    }

    public int getWarehousingAmount() {
        return warehousingAmount;
    }

    public void setWarehousingAmount(int warehousingAmount) {
        this.warehousingAmount = warehousingAmount;
    }

    public String getModelCode() {
        return modelCode;
    }

    public void setModelCode(String modelCode) {
        this.modelCode = modelCode;
    }

    public BigDecimal getPurchasePrice() {
        return purchasePrice;
    }

    public void setPurchasePrice(BigDecimal purchasePrice) {
        this.purchasePrice = purchasePrice;
    }

    public String getTaxRate() {
        return taxRate;
    }

    public void setTaxRate(String taxRate) {
        this.taxRate = taxRate;
    }

    public BigDecimal getTaxPrice() {
        return taxPrice;
    }

    public void setTaxPrice(BigDecimal taxPrice) {
        this.taxPrice = taxPrice;
    }

    public BigDecimal getPurchaseTotal() {
        return purchaseTotal;
    }

    public void setPurchaseTotal(BigDecimal purchaseTotal) {
        this.purchaseTotal = purchaseTotal;
    }

    public BigDecimal getTaxTotal() {
        return taxTotal;
    }

    public void setTaxTotal(BigDecimal taxTotal) {
        this.taxTotal = taxTotal;
    }
}
